using Bean.Entity.Enum;
using SqlSugar;

namespace Bean.Entity.Entities;

/// <summary>
/// 
/// </summary>
[SugarTable("sys_serviceprovider")]
public class ServiceProviderInfo
{
    /// <summary>
    /// 服务商id
    /// </summary>
    public long serviceproviderid { get; set; }

    /// <summary>
    /// 服务商编码
    /// </summary>
    public string serviceprovidercode { get; set; }

    /// <summary>
    /// 服务商类别：0平台，1采购商，2供应商
    /// </summary>
    public int serviceprovidertype { get; set; }

    /// <summary>
    /// 服务商名称
    /// </summary>
    public string serviceprovidername { get; set; }

    /// <summary>
    /// 服务商状态0.下线，1.上线
    /// </summary>
    public int serviceproviderstatus { get; set; }

    /// <summary>
    /// 父级服务商 当=0时 表示1级服务商
    /// </summary>
    public long ParentSID { get; set; }

    /// <summary>
    /// 平台编码
    /// </summary>
    public string PlatformCode { get; set; }

    /// <summary>
    /// 平台短码
    /// </summary>
    // public string PlatformShortCode { get; set; }

    /// <summary>
    /// 采购类型
    /// <para>0-无</para>
    /// <para>1-渠道采购</para>
    /// <para>2-客户采购</para>
    /// </summary>
    public int PurchaseType { get; set; }

    /// <summary>
    /// 采购所属供应商限制id
    /// </summary>
    // public string PurchaseProviderLimit { get; set; }

    /// <summary>
    /// 采购公司类型：
    /// <para>0-无</para>
    /// <para>1-OTA</para>
    /// <para>2-分销渠道</para>
    /// <para>3-差旅渠道</para>
    /// <para>4-代理人</para>
    /// <para>5-企业</para>
    /// <para>6-政府机构</para>
    /// <para>100-其它渠道</para>
    /// </summary>
    public int PurchaseCompanyType { get; set; }

    /// <summary>
    /// 采购状态0-下线/1-上线
    /// </summary>
    public int purchaserstatus { get; set; }

    /// <summary>
    /// 供应状态0-下线/1-上线
    /// </summary>
    public int providerstatus { get; set; }

    /// <summary>
    /// 调用API Token
    /// </summary>
    public string apitoken { get; set; }

    /// <summary>
    /// 工作时间范围
    /// </summary>
    public string buytimes { get; set; }

    /// <summary>
    /// 投放航司白名单
    /// </summary>
    private string _providerairwhiteput = string.Empty;

    /// <summary>
    /// 投放航司白名单
    /// </summary>
    public string providerairwhiteput
    {
        get => _providerairwhiteput ?? string.Empty;
        set => _providerairwhiteput = value;
    }

    /// <summary>
    /// 供应方式
    /// <para>0.供应商直连</para>
    /// <para>1.自有运价</para>
    /// </summary>
    public int providertype { get; set; }

    /// <summary>
    /// 投放方式
    /// <para>0-平台</para>
    /// <para>1-直投</para>
    /// </summary>
    public int DeliveryMode { get; set; }

    /// <summary>
    /// 是否有效
    /// <para>1.可见</para>
    /// <para>0.不可见</para>
    /// </summary>
    public int isactive { get; set; }

    /// <summary>
    /// 采购商所属平台
    /// </summary>
    public int cid { get; set; }

    /// <summary>
    /// 采购接口参数配置
    /// </summary>
    private string _configuration = string.Empty;

    /// <summary>
    /// 采购接口参数配置
    /// </summary>
    public string configuration
    {
        get => _configuration ?? string.Empty;
        set => _configuration = value;
    }

    /// <summary>
    /// 公司名称
    /// </summary>
    private string companyName = string.Empty;

    /// <summary>
    /// 公司名称
    /// </summary>
    public string CompanyName
    {
        get => companyName ?? string.Empty;
        set => companyName = value;
    }

    /// <summary>
    /// 地址
    /// </summary>
    private string _address = string.Empty;

    /// <summary>
    /// 地址
    /// </summary>
    public string address
    {
        get => _address ?? string.Empty;
        set => _address = value;
    }

    /// <summary>
    /// 电话
    /// </summary>
    private string _telephone = string.Empty;

    /// <summary>
    /// 电话
    /// </summary>
    public string telephone
    {
        get => _telephone ?? string.Empty;
        set => _telephone = value;
    }

    /// <summary>
    /// 联系人json
    /// </summary>
    private string _ContactsJson = string.Empty;

    /// <summary>
    /// 联系人json
    /// </summary>
    public string ContactsJson
    {
        get => _ContactsJson ?? string.Empty;
        set => _ContactsJson = value;
    }

    /// <summary>
    /// 创建时间
    /// </summary>
    public DateTime createtime { get; set; }

    /// <summary>
    /// 创建人
    /// </summary>
    public long createuser { get; set; }

    /// <summary>
    /// 最后修改时间
    /// </summary>
    public DateTime lastupdatetime { get; set; }

    /// <summary>
    /// 最后修改人
    /// </summary>
    public long lastupdateuser { get; set; }

    /// <summary>
    /// 短信增值服务开关配置
    /// </summary>
    private string _vassmsconfig = string.Empty;

    /// <summary>
    /// 短信增值服务开关配置
    /// </summary>
    public string vassmsconfig
    {
        get => _vassmsconfig ?? string.Empty;
        set => _vassmsconfig = value;
    }

    /// <summary>
    /// 【NEW】机票区域类型 0-不限/1-国内机票/2-国际机票
    /// </summary>
    public int FlightAreaType { get; set; }

    /// <summary>
    /// 分销商类型
    /// </summary>
    public DistributionTypeEnum DistributionType { get; set; }
  

    /// <summary>
    /// 【NEW】分销授权码 第三方分销商和子服务商必须要有对应系统的分销授权码才可以使用
    /// </summary>
    public string FXAuthCode { get; set; }
}